home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Source Code / C / Applications / Moscow ML 1.42 / lib / CharVector.sig < prev    next >
Encoding:
Text File  |  1997-08-18  |  1.2 KB  |  35 lines  |  [TEXT/Moml]

  1. (* CharVector -- SML Basis Library *)
  2.  
  3. type vector = string
  4. type elem = Char.char
  5.  
  6. val maxLen   : int
  7.  
  8. val fromList : elem list -> vector
  9. val tabulate : int * (int -> elem) -> vector
  10.  
  11. val length   : vector -> int
  12. val sub      : vector * int -> elem
  13. val extract  : vector * int * int option -> vector
  14. val concat   : vector list -> vector
  15.  
  16. val app      : (elem -> unit) -> vector -> unit
  17. val map      : (elem -> elem) -> vector -> vector
  18. val foldl    : (elem * 'b -> 'b) -> 'b -> vector -> 'b
  19. val foldr    : (elem * 'b -> 'b) -> 'b -> vector -> 'b
  20.  
  21. val appi     : (int * elem -> unit) -> vector * int * int option -> unit
  22. val mapi     : (int * elem -> elem) -> vector * int * int option -> vector
  23. val foldli   : (int * elem * 'b -> 'b) -> 'b -> vector*int*int option -> 'b
  24. val foldri   : (int * elem * 'b -> 'b) -> 'b -> vector*int*int option -> 'b
  25.  
  26.  
  27. (* Type vector is the type of one-dimensional, immutable, zero-based
  28.    constant-time-access vectors with elements of type Char.char,
  29.    that is, characters.  Type vector admits equality, and vectors
  30.    v1 and v2 are equal if they have the same length and their
  31.    elements are equal.  The type vector is the same as String.string.
  32.  
  33.    All operations are as for Vector.vector.
  34. *)
  35.